Universal Wall Boundary Condition Treatment for K-Omega Turbulence Models

ABSTRACT

Disclosed are techniques for simulating a physical process and for determining boundary conditions for a specific energy dissipation rate of a k-Omega turbulence fluid flow model of a fluid flow, by computing from a cell center distance and fluid flow variables a value of the specific energy dissipation rate for a turbulent flow that is valid for a viscous layer, buffer layer, and logarithmic region of a boundary defined in the simulation space. The value is determined by applying a buffer layer correction factor as a first boundary condition for the energy dissipation rate and by applying a viscous sublayer correction factor as a second boundary condition for the energy dissipation rate.

BACKGROUND

This description relates to computer simulation of physical processes, such as physical fluid flows.

High Reynolds number flow has been simulated by generating discretized solutions of the Navier-Stokes differential equations by performing high-precision floating point arithmetic operations at each of many discrete spatial locations on variables representing the macroscopic physical quantities (e.g., density, temperature, flow velocity). One approach simulate a problem of interest uses the so called SST k-Omega turbulence model, a widely used turbulence model, which solves two partial differential equations (k) and (Omega). One of these equations (k) is for turbulent kinetic energy (TKE) and one of these equations (Omega) is for specific energy dissipation rate (SEDR). The combination of these equations define a turbulent state of a fluid flow.

In principle, it is possible to solve the fluid dynamics governing equations (e.g., the Navier-Stokes equations) to simulate the problem of interest. Unfortunately, most practical engineering problems involve flow conditions that occur at large Reynolds number flows under turbulent flow conditions. This requires the Computational Fluid Dynamic (CFD) simulations solvers to apply turbulence modeling technology to reduce the time and computational model size to practical levels, in order to obtain solutions under such conditions with reasonable computational and time costs. Turbulence modeling is a methodology that approximates the behavior of turbulent fluid flows.

One such model is the shear stress transport formulation of a k-Omega turbulence model or simply “SST k-Omega turbulence model.” The SST k-Omega turbulence model involves the solution to two partial differential equations. As is generally true of partial differential equations, the k and the Omega partial differential equations require specifications of boundary conditions in order for those equations to be solved.

While the equation for the turbulent kinetic energy (k) is subject to Dirichlet and Neumann boundary conditions that define integration of this equation with the specific energy dissipation rate (the Omega partial differential equation), the Omega partial differential equation lacks boundary conditions of either the Dirichlet or the Neumann type at wall boundaries, and as such the Omega partial differential equation cannot be readily integrated with the k partial differential equation to provide a solution.

In order to provide a solution that effectively integrates these equations, typically a near-wall analysis is conducted to simplify the Omega partial differential equation to derive an ancillary equation that describes the behavior of the Omega partial differential equation as the wall-boundary is asymptotically approached.

However, while this auxiliary equation is not a formal boundary condition that can be used to solve the Omega partial differential equation, enforcing this equation close to a wall boundary nevertheless allows for a solution. The problem is how to enforce the auxiliary to equation. Various solutions have been proposed. One proposed solution to enforce the auxiliary equation behavior produces additional mesh points to recover asymptotic behavior. Another solution proposed is a modification to the auxiliary equation to enforce the auxiliary equation as a Dirichlet boundary condition.

SUMMARY

As mentioned above a drawback of the specific SST k-Omega turbulence model and more generally of k-Omega models is that the Omega partial differential equation for the specific energy dissipation rate lacks boundary conditions of either the Dirichlet or the Neumann type at the wall boundaries, and as such cannot be readily integrated with the k equation to provide a solution.

Described herein is a generalized wall-boundary condition treatment for the Omega partial differential equation for use in specifying boundary conditions with simulations that use the SST k-Omega turbulence model specifically, and more generally, the solution is applicable to k-Omega turbulence model formulations in general.

The generalized wall-boundary condition described herein automatically imposes correct auxiliary asymptotic relationships needed in the viscous-sublayer and logarithmic-layer and thus eliminates pathological mesh-dependent degradation in accuracy that is exhibited when the viscous-sublayer is not properly resolved by the mesh. The described generalized wall-boundary condition can eliminate the pathological mesh-dependent degradation in accuracy exhibited when the first element away from the wall boundary is located within the buffer layer. In addition, the generalized wall-boundary condition treatment can accurately predict results independently of the location of the first element away from the wall provided that the rest of the boundary layer is properly resolved.

According to an aspect, a computer-implemented method for simulating fluid flow about a simulated physical object includes receiving by one or more computing systems, a model of a simulation space that includes a mesh defining a representation of the physical object in the simulation space, with the mesh comprising plural cells having resolutions to account for surfaces of the physical object, determining boundary conditions for a specific energy dissipation rate of a k-Omega turbulence fluid flow model of the fluid flow, by determining a cell center of a cell in the mesh and computing by the one or more computing systems from the cell center distance and fluid flow variables a value of the specific energy dissipation rate for a turbulent flow that is valid for a viscous layer, buffer layer, and logarithmic region of a boundary defined in the simulation space.

Other aspects include computing systems and computer program products.

One or more of the above aspects can include any one or more of the following features or other features as disclosed below.

For a cell located at a position y+<3 of the boundary where y is a cell at the boundary, the aspects apply a buffer layer correction factor as a boundary condition for the energy dissipation rate. Determining the boundary conditions includes applying by the one or more computing systems, a buffer layer correction factor as a boundary condition for the energy dissipation rate for a cell located at a position y+<3 of the boundary where y is a cell at the boundary, and the correction factor is given according to:

ω′_(Hyb) =f _(blend)ω_(Hyb)

where ω′_(Hyb) is the correction factor f_(blend) is a blending function and ω_(Hyb) is a viscus layer correction function

Determining the boundary conditions includes applying a viscous sublayer correction factor as a boundary condition for the energy dissipation rate. Determining the boundary conditions further includes applying by the one or more computing systems, a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to:

$\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$

where

$\frac{\partial\omega_{v}^{f}}{\partial y}$

is the correction factor, y₁ ² is the cell at location 1 and y₂ ² is the cell at position 2.

The aspects further include accessing the k-Omega model, initializing the accessed k-Omega model with the determined boundary conditions, and executing the initialized k-Omega model to simulated the fluid flow about the simulated physical object. The aspects further include accessing the k-Omega turbulence fluid flow model, with the k-Omega turbulence fluid flow model, including a first partial differential equation to determine turbulent kinetic energy of the fluid flow; and a second partial differential equation to determine the specific energy dissipation rate of the fluid flow in the simulation space.

The aspects further include determining whether the location is at a buffer layer; and when at a buffer layer, applying a correction that increase the values of energy dissipation rate only at the buffer layer. Applying the correction further includes applying a blending function that acts on the values of energy dissipation rate at the buffer layer and prevents the blending function to affect values at the viscous layer of the boundary defined in the simulation space.

One or more of the above aspects may provide one or more of the following advantages.

The approach to specifying boundary conditions may substantially improve the accuracy of turbulent CFD simulations that use any family of k-Omega models, relative to current boundary condition strategies. The approach removes from predictions mesh-dependency found on meshes that do not properly resolve the viscous-sublayer, unlike current boundary condition strategies. The approach removes or substantially reduces mesh-dependency on meshes whose first grid element away from the wall, resides at the buffer layer, unlike current boundary condition strategies. The approach provides a boundary condition treatment throughout the inner-layer of the turbulent boundary layer that is independent of the location of the first grid point away from the wall, unlike current boundary condition strategies. The approach may generalize the application of boundary conditions for the Omega partial differential equation at the wall, enforcing the viscous-sublayer and logarithmic-layer asymptotic behaviors, unlike current boundary condition strategies.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a system for simulation of fluid flows, which includes a turbulent boundary layer model for compressible or incompressible flows.

FIG. 2 depicts a flow chart showing operations for formulation of a K-Omega SST turbulence model.

FIG. 3 depicts a flow chart showing operations for correction to determining boundary conditions.

FIG. 4 is a plot that illustrates a solution of the Omega PDE in a turbulent channel flow.

FIG. 5 is a plot that illustrates blending of ancillary relationships for Omega at the viscous sublayer and logarithmic layer.

FIG. 6 is a plot that illustrates mesh dependency according to viscous sublayer resolution.

FIG. 7 is a plot that illustrates distribution of Omega and channel flow when near wall resolution is not sufficiently fine in gradation.

FIG. 8 is a diagram that illustrates two cells close to a boundary.

FIG. 9 is a plot that illustrates a mean velocity profile and friction factor for different near-wall resolutions (uncorrected), with plural examples at resolution cases plotted, but only selective ones indicated by a reference line for clarity.

FIG. 10 is a plot that illustrates a mean velocity profile and friction factor for different near-wall resolutions (corrected), with plural examples at resolution cases plotted, but only selective ones indicated by a reference line for clarity.

FIG. 11 is a plot that illustrates mismatch of Omega in the buffer layer.

FIG. 12 is a plot that illustrates performance of boundary layer conditions in the buffer layer, with plural examples at resolution cases plotted, but only selective ones indicated by a reference line for clarity.

FIG. 13 is a plot that illustrates a blending function that improves accuracy in the buffer layer.

FIG. 14 is a plot that illustrates correction of omega in the buffer layer.

FIG. 15 is a plot that illustrates results of applying a boundary condition correction, with plural examples at resolution cases plotted, but only selective ones indicated by a reference line for clarity.

DETAILED DESCRIPTION

Described below is a generic auxiliary equation that is derived and which correctly reproduces near wall behavior and wall-function limits with a correction that eliminates mesh-dependent solutions in the near-wall limit to provide a practical implementation of the auxiliary boundary condition treatment of the Omega partial differential equation in k-Omega turbulence models used in computation fluid dynamic simulations.

In the discussion below, a boundary condition treatment is introduced for the Omega partial differential equation that is applicable to all the k-Omega turbulence models. In the discussion below, distance from a wall boundary is referred to as “y+n,” where “y” is a boundary and “n” is a number of cells away from the boundary, where n is a number that takes as a value of either an integer or a decimal.

The boundary condition approach discussed below references: a viscous sub-layer nominally between y+0.1 to y+5; a logarithmic-layer (log layer) that is a fully turbulent region away from the wall, e.g., y+>25; and a buffer layer that is neither the viscous sublayer nor the fully turbulent logarithmic region and is typically defined by 5<y+<25. Other variations in these ranges are possible.

The boundary condition approach is based on deriving a universal auxiliary relationship for ω that describes the asymptotic behaviors of the Omega partial differential equation in the viscous sub-layer (e.g., a layer that is close to the wall boundary, typically y+5)ω_(v), and that is fully compliant with a turbulent equilibrium logarithmic-layer (e.g., a layer distal from the wall, typically y+25, but still within the boundary layer), ω_(L). This approach to the auxiliary equation also includes a correction factor that fixes a degradation in accuracy associated with relatively poor mesh-resolution in the viscous-sublayer.

Referring now to FIG. 1 , a system 10 includes a simulation engine 34 configured for CFD simulations using any model of the family of k-Omega turbulence models. The simulation engine 34 includes a turbulence model module 34 a that executes a specific k-Omega turbulence model, and a boundary module 34 b that automatically specifies boundary conditions for use with the turbulence model module 34 a. The boundary conditions executed in the boundary module 34 b are derived from a universal solution for ω that satisfies turbulent behavior within a boundary layer. In other words, an auxiliary relationship is provided that describes asymptotic behaviors of the Omega partial differential equation in a viscous sub-layer (e.g., a layer that is close to the wall boundary, e.g., y+5), while being fully compliant with a turbulent equilibrium logarithmic layer (e.g., a layer distal from the wall, e.g., y+25, yet still within the boundary layer).

The system 10 in this implementation is based on a client-server or cloud based architecture and includes a server system 12 implemented as a massively parallel computing system 12 (stand alone or cloud-based) and a client system 14. The server system 12 includes memory 18, a bus system 11, interfaces 20 (e.g., user interfaces/network interfaces/display or monitor interfaces, etc.) and a processing device 24. In memory 18 are a mesh preparation engine 32 and a simulation engine 34.

While FIG. 1 shows the mesh preparation engine 32 in memory 18, the mesh preparation engine can be a third party application that is executed on a different system than server 12. Whether the mesh preparation engine 32 executes in memory 18 or is executed on a different system than server 12, the mesh preparation engine 32 receives a user-suppled mesh definition 30 and the mesh preparation engine 32 prepares a mesh and sends (and or stores) the prepared mesh to the simulation engine 34 according to a physical object that is being modelled for simulation by the simulation engine 34. The system 10 accesses a data repository 38 that stores 2D and/or 3D meshes (Cartesian and/or curvilinear), coordinate systems, and libraries. Any of number physical objects or physical fluid flows can be represented in a simulation space that is used to represent the physical object or physical flow. Simulations can be used in a broad range of technical and engineering problems including aerodynamic/aerospace analysis, weather, environmental engineering, industrial systems, biological systems, general fluid flows, and combustion systems, etc.

Referring now to FIG. 2 , a process 40 for simulating fluid flow about a representation of a physical object is shown. In the example that will be discussed herein, the physical object is an airfoil. The use of an airfoil is merely illustrative however, as the physical object can be of any shape, and in particular can have planar and/or curved surface(s). The process 40 receives 42, e.g., from client system 14 or retrieves from the data repository 38, a mesh (or grid) for the physical object being simulated. In other embodiments, either an external system or the server 12 based on user input, generates the mesh for the physical object being simulated. Other examples include

The process precomputes 44 geometric quantities from the retrieved mesh. Process 40 determines 46 boundary conditions (e.g., in the boundary module 34 b) based on the retrieved mesh and flow field variables. Flow field variables such as velocity, Omega, k, temperature, etc., are used to compute cocoon for the object being simulated for use in the boundary module 34 b. Once the turbulence variables are known, the partial differential equations k and Omega are solved. The turbulence model provides eddy viscosity which represents the effects of turbulence that cannot be resolved by the mesh and is used to advance the solution. The mesh comprises or divides the simulation space into plural cells.

The process performs 48 the computational fluid dynamic simulation (CFD) using a selected k-Omega turbulence model. The model is initialized by the boundary conditions and is executed in turbulence model module 34 a, using the precomputed geometric quantities corresponding to the retrieved mesh.

Referring now to FIG. 3 , a process 60 for simulating fluid flow about a simulated physical object is shown. The process 60 includes receiving 62 by a computing systems, a model of a simulation space that includes a mesh defining a representation of the physical object in the simulation space, with the mesh comprising plural cells having resolutions to account for surfaces of the physical object. The process 60 also includes determining 64 boundary conditions for a specific energy dissipation rate of a k-Omega turbulence fluid flow model of the fluid flow, by determining a cell center of a cell in the mesh and computing 66 by the one or more computing systems from the cell center distance and fluid flow variables a value of the specific energy dissipation rate for a turbulent flow that is valid for a viscous layer, buffer layer, and logarithmic region of a boundary defined in the simulation space.

The process 60 also includes for a cell located at a position y+<3 of the boundary where y is a cell at the boundary, applying 68 a a buffer layer correction factor as a boundary condition for the energy dissipation rate. The process 60 also includes applying 69 b a viscous sublayer correction factor as a boundary condition for the energy dissipation rate.

In order to derive the wall-function assumptions, discussed above, the fluid flow is analyzed over a turbulent channel flow. The Reynolds averaged governing equations for an incompressible turbulent channel are given by:

$\begin{matrix} {{\frac{{\partial\rho}u}{\partial t} + \frac{{\partial\rho}u_{j}u_{i}}{\partial x_{j}}} = {{- \frac{\partial p}{\partial x_{i}}} + {\frac{\partial}{\partial x_{j}}\left\lbrack {\tau_{ij} - \overset{\_}{\rho u_{j}^{\prime}u_{j}^{\prime}}} \right\rbrack}}} & \left( {1.a} \right) \end{matrix}$ $\begin{matrix} {\frac{\partial u_{j}}{\partial x_{j}} = 0} & \left( {1.b} \right) \end{matrix}$

For fully developed flows and no mean span wise velocity, the assumptions are:

$\begin{matrix} {{w = 0},{\frac{\partial}{\partial x}{= {\frac{\partial}{\partial z}{= 0}}}}} & (2.) \end{matrix}$

The x and z components of a turbulent flow are 0 means that that on average the flow does not change over x and z. However, over those directions, the flow can change instantaneously over portions of a geometric space.

Therefore, the equation for continuity becomes

$\begin{matrix} {{\frac{\partial v}{\partial x} = 0},{v = c},{{v\left( {y = 0} \right)} = 0},{v = 0}} & (3.) \end{matrix}$

This implies that advection is zero, and thus the steady state governing equations are as:

$\begin{matrix} {\frac{\partial p}{\partial x_{i}} = {\frac{\partial}{\partial x_{j}}\left\lbrack {\tau_{ij} - \overset{\_}{\rho u_{i}^{\prime}u_{j}^{\prime}}} \right\rbrack}} & (4.) \end{matrix}$

Evaluating the equation in the Z direction yields

$\begin{matrix} {{\frac{\partial p}{\partial z} = {\frac{\partial}{\partial y}\left\lbrack {\tau_{zy} - \overset{\_}{\rho w^{\prime}v^{\prime}}} \right\rbrack}},{\tau_{zy} = {\mu = 0}}} & (5.) \end{matrix}$ $\frac{\partial p}{\partial z} = {- {\frac{\partial}{\partial y}\left( \overset{\_}{\rho w^{\prime}v^{\prime}} \right)}}$

This equation balances throughout the Z axis, which means that the gradient of the Reynolds stress is constant and symmetric along the Z axis.

$\begin{matrix} {\frac{\partial p}{\partial z} = {{- {\frac{\partial}{\partial y}\left( {\overset{\_}{\rho w^{\prime}v^{\prime}}(z)} \right)}} = {- {\frac{\partial}{\partial y}\left( {\overset{\_}{\rho w^{\prime}v^{\prime}}\left( {- z} \right)} \right)}}}} & \left( {6.a} \right) \end{matrix}$

This implies that the Reynolds stress is antisymmetric

ρw′v′(z)=−ρw′v′(−z)  (6.b)

Thus the Reynolds stress at z=0 is zero

$\begin{matrix} {{\frac{\partial p}{\partial z} = 0},{{p(z)} = {cte}},{p = {p\left( {x,y,\ {z = 0}} \right.}}} & \left( {6.c} \right) \end{matrix}$

This means that the pressure does not change over the Z axis and is sufficient enough to “measure” the pressure at the center of the span-wise direction z=0. Evaluating the equation in the Y direction states that the wall-normal Reynolds stress is only function of the wall-normal direction.

$\begin{matrix} {{\frac{\partial p}{\partial y} = {\frac{\partial}{\partial y}\left\lbrack {\tau_{yy} - \overset{\_}{\rho v^{\prime}v^{\prime}}} \right\rbrack}},{\tau_{zy} = {\mu = 0}}} & \left( {5.a} \right) \end{matrix}$ $\frac{\partial p}{\partial y} = {- {\frac{\partial}{\partial y}\left( \overset{\_}{\rho v^{\prime}v^{\prime}} \right)}}$

This can be integrated to yield

p=−ρv′v′+cte

p(y)=−ρv′v′ (y)+P _(wall)  (5.b)

From this equation, the pressure gradient in the stream-wise direction is equal to the gradient of the pressure at the wall

$\begin{matrix} \left. {\frac{\partial p}{\partial x} = {{{\frac{\partial}{\partial x}\left( {- \overset{\_}{\rho v^{\prime}v^{\prime}}} \right)}(y)} + p_{wall}}} \right) & \left( {5.c} \right) \end{matrix}$ $\frac{\partial p}{\partial x} = \frac{\partial p_{wall}}{\partial x}$

Evaluating the X-momentum equation using Eq. (5.c) and applying symmetry conditions yields

$\begin{matrix} {{\frac{\partial p_{wall}}{\partial x} = {\frac{\partial}{\partial y}\left( {\tau_{xy} - \overset{\_}{\rho u^{\prime}v^{\prime}}} \right)}},{\tau_{xy} = \mu},{{\frac{\partial u}{\partial y}(y)} = {{- \frac{\partial u}{\partial y}}\left( {- y} \right)}},} & \left( {6.a} \right) \end{matrix}$ ${{\overset{\_}{\rho u^{\prime}v^{\prime}}(y)} = {{- \overset{\_}{\rho u^{\prime}v^{\prime}}}\left( {- y} \right)}},{\frac{\partial p_{wall}}{\partial x} = {\frac{\partial}{\partial y}\left( {\frac{\partial}{\partial y}{- \overset{\_}{\rho u^{\prime}v^{\prime}}}} \right)}}$ $\begin{matrix} {{{y\frac{\partial p_{wall}}{\partial x}} = {{\mu\frac{\partial u}{\partial y}} - \overset{\_}{\rho u^{\prime}v^{\prime}} + {cte}}},{{\overset{\_}{\rho u^{\prime}v^{\prime}}\left( {y = 0} \right)} = 0},{{cte} = {- \tau_{wall}}}} & \left( {6.b} \right) \end{matrix}$

Evaluating this equation at the center of the channel y=H yields

$\begin{matrix} {{y\frac{\partial p_{wall}}{\partial x}} = {{\mu\frac{\partial u}{\partial y}} - \overset{\_}{\rho u^{\prime}v^{\prime}} - \tau_{wall}}} & \left( {7.a} \right) \end{matrix}$ ${{H\frac{\partial p_{wall}}{\partial x}} = {- \tau_{wall}}},$

Thus the pressure drop in the channel can be computed as

$\begin{matrix} {{\Delta p} = {{- \tau_{wall}}\frac{L}{H}}} & \left( {7.b} \right) \end{matrix}$

The momentum equation can also be written in terms of the total stress

$\begin{matrix} {{\frac{\partial p_{wall}}{\partial x} = {\frac{\partial}{\partial y}\left( \tau_{tot} \right)}},{\tau_{tot} = {\tau_{xy} - \overset{\_}{\rho u^{\prime}v^{\prime}}}},} & \left( {7.c} \right) \end{matrix}$ τ_(tot)(y = H) = 0, τ_(tot)(y = 0) = τ_(wall), ${{y\frac{\partial p_{wall}}{\partial x}} = {\tau_{tot} + {cte}}},{{y\frac{\partial p_{wall}}{\partial x}} = {\tau_{tot} - \tau_{wall}}},$

Using Eq. (7.a) equation (7.c) can be written as

$\begin{matrix} {{\tau_{tot} = {\tau_{wall}\left( {1 - \frac{y}{H}} \right)}},{{Re}_{\tau} = \frac{\rho u_{\tau}H}{\mu}}} & \left( {7.c} \right) \end{matrix}$

Therefore, the total stress in the channel can be written as function of y+ (Eq. 7d), and the Friction Reynolds numbers (Eq. 8.0).

$\begin{matrix} {{\tau_{tot} = {\tau_{wall}\left( {1 - \frac{y^{+}}{{Re}_{\tau}}} \right)}},} & (8.) \end{matrix}$

If this equation is expanded and the so called “law-of-the-wall” is used to compute the velocity gradients Eq. (8.0) can be written as:

$\begin{matrix} {{{{\mu\frac{\partial u}{\partial y}} - \overset{\_}{\rho u^{\prime}v^{\prime}}} = {\tau_{wall}\left( {1 - \frac{y^{+}}{{Re}_{\tau}}} \right)}},} & \left( {9.a} \right) \end{matrix}$

where the law of the wall conveys is an universal function that relates the value of the mean velocity profile with y+, this velocity profile is composed by three regions, the viscous sublayer (where the velocity follows a linear function for y+<5), the logarithmic layer (where the velocity follows a logarithmic function for y+>25), and the buffer layer which is a smooth transition function between both layers for 5<y+<25, and at the wall becomes:

$\begin{matrix} {{{{\tau_{wall}\frac{\partial u^{+}}{\partial y^{+}}} - \overset{\_}{\rho u^{\prime}v^{\prime}}} = {\tau_{wall}\left( {1 - \frac{y^{+}}{{Re}_{\tau}}} \right)}},} & \left( {9.b} \right) \end{matrix}$

So the Reynolds stresses can be exactly computed

$\begin{matrix} {{{- \overset{\_}{\rho u^{\prime}v^{\prime}}} = {\tau_{wall}\left( {1 - \frac{y^{+}}{{Re}_{\tau}} - \frac{\partial u^{+}}{\partial y^{+}}} \right)}},} & \left( {9.c} \right) \end{matrix}$

The flow starts becoming turbulent at Re_(τ)>100, so y⁺<5, u⁺=y⁺ can be written for the viscous-sublayer as:

$\begin{matrix} {{{- \overset{\_}{\rho u^{\prime}v^{\prime}}} = {\tau_{wall}\left( {1 - \frac{y^{+}}{{Re}_{\tau}} - 1} \right)}},{{- \overset{\_}{\rho u^{\prime}v^{\prime}}} = {{- \frac{\tau_{wall}y^{+}}{{Re}_{\tau}}} \approx 0}}} & \left( {10.a} \right) \end{matrix}$

This shows that the Reynolds stress is about zero in the viscous-sublayer. In the logarithmic region y⁺>25,

${u^{+} = {{\frac{1}{\kappa}{\ln\left( y^{+} \right)}} + B}},$

the Reynolds stress is approximated as

$\begin{matrix} {{{- \overset{\_}{\rho u^{\prime}v^{\prime}}} = {\tau_{wall}\left( {1 - \frac{y^{+}}{{Re}_{\tau}} - \frac{1}{\kappa y^{+}}} \right)}},{{- \overset{\_}{\rho u^{\prime}v^{\prime}}} \approx \tau_{wall}}} & \left( {10.b} \right) \end{matrix}$

Therefore, for large enough Re_(τ) the Reynolds stress is equal to the wall-shear stress. Moreover, even for a Reynolds stress Re_(τ)=100, in the logarithmic region y⁺=25, the equation (10.b) provides −ρu′v′=0.6524τ_(wall)≈τ_(wall), which is barely turbulent, and for larger Reynolds number −ρu′v′=0.9τ_(wall)≈τ_(wall), approximately equal to turbulence at the wall or boundary.

The implementation of the production close to the wall is done applying Eq. (9.c) by assuming proximity being very close to the wall and eliminating the second term, which for high Re, should be zero.

$\begin{matrix} {{{Pk} = {{{- \overset{\_}{\rho u^{\prime}v^{\prime}}}\frac{\partial u}{\partial y}} \simeq {{\tau_{wall}\left( {1 - \frac{\partial u^{+}}{\partial y^{+}}} \right)}\frac{\partial u}{\partial y}}}},{{Pk} \simeq {\frac{\tau_{wall}^{2}}{\mu}\left( {1 - \frac{\partial u^{+}}{\partial y^{+}}} \right){\frac{\partial u^{+}}{\partial y^{+}}.}}}} & \left( {10.d} \right) \end{matrix}$

It is possible to relate the wall-shear stress with the turbulence variables. A turbulent kinetic energy budget predicts that in the logarithmic region production balances dissipation

$\begin{matrix} {{{{- \overset{\_}{\rho u^{\prime}v^{\prime}}}\frac{\partial u}{\partial y}} = {\rho\varepsilon}},} & (11.) \end{matrix}$

Using the k−ε model the eddy viscosity is written as

$\begin{matrix} {\mu_{T} = {\rho C_{\mu}\frac{k^{2}}{\varepsilon}}} & (12.) \end{matrix}$

Using Eq. (12.0) in (11.0) the wall-shear can be written in terms of the turbulent kinetic energy in the logarithmic layer.

$\begin{matrix} {{{{- \overset{\_}{\rho u^{\prime}v^{\prime}}}\frac{\partial u}{\partial y}} = {\rho^{2}\frac{C_{\mu}k^{2}}{\mu_{T}}}},{{- {\overset{\_}{\rho u^{\prime}v^{\prime}}}^{2}} = {\rho^{2}C_{\mu}k^{2}}},{\tau_{wall}^{2} = {\rho^{2}C_{\mu}k^{2}}}} & (13.) \end{matrix}$

So the friction velocity

$u_{\tau} = \sqrt{\frac{\tau_{wall}}{\rho}}$

can be written as

u _(τ) =C _(μ) ^(1/4) k ^(1/2)  (14.a)

To compute the values of s in the viscous sublayer and logarithmic region the following relationships can be used. Based on the TKE budget at the wall the diffusion of TKE balances the energy-dissipation rate.

$\begin{matrix} {{v\frac{\partial^{2}k}{\partial y^{2}}} = \varepsilon} & \left( {14.b} \right) \end{matrix}$

This can be integrated as

$\begin{matrix} {k = {\frac{\varepsilon y^{2}}{2v} + {C_{1}y} + C_{2}}} & (15.) \end{matrix}$

Given the boundary condition k (y=0)=0, C₂=0, the turbulent kinetic energy can be written as

$\begin{matrix} {k = {y\left( {\frac{\varepsilon y}{2v} + C_{1}} \right)}} & (16.) \end{matrix}$

Since the turbulent kinetic energy has to always be positive this requires that

$\begin{matrix} {{C_{1} \geq {- \frac{\varepsilon y}{2v}}},{\forall y}} & (17.) \end{matrix}$

Further information can be obtained by looking for the location of the critical point, since this point exists and is a minimum by Eq. (14.b).

$\begin{matrix} {{\frac{\partial k}{\partial y} = {{\frac{\varepsilon y}{v} + C_{1}} = 0}},{y = {- \frac{C_{1}v}{\varepsilon}}}} & (18.) \end{matrix}$

Since the critical point has to be located within the domain y≥0, this imposes that C₁≤0. Imposing both conditions yields

$\begin{matrix} {{C_{1} \geq {- \frac{\varepsilon y}{2v}}},{{\& C_{1}} \leq {0{\forall y}}}} & (19.) \end{matrix}$

Since this holds for all y including y=0, conditions in Eq. (19.0) become

C ₁≥0,&C ₁≤0  (20.0)

The only way that equation 20.0 can be true is when C₁=0, which implies that

$\begin{matrix} {{\varepsilon = \frac{2{vk}}{y^{2}}},{\left. \frac{\partial k}{\partial y} \right|_{wall} = 0}} & (21.) \end{matrix}$

The relationship for the dissipation rate in the logarithmic region can be obtained by substituting Eq. (10.b) on Eq. (11.0)

$\begin{matrix} {\varepsilon = {{\tau_{wall}\frac{u_{\tau}^{2}}{\mu}\frac{\partial u^{+}}{\partial y^{+}}} = {{\tau_{wall}\frac{u_{\tau}^{2}}{\mu\kappa y^{+}}} = \frac{u_{\tau}^{3}}{\kappa y}}}} & (22.) \end{matrix}$

and by using Eq. (14.a), the logarithmic relationship can be written as

$\begin{matrix} {\varepsilon = \frac{C_{\mu}^{3/4}k^{3/2}}{\kappa y}} & (23.) \end{matrix}$

If eddy viscosity is evaluated using Eq. (23.0), the eddy viscosity can be found to be linear in the logarithmic region.

v _(T) =u _(τ) κy  (24.0)

Near-Wall Turbulence Analysis for Plane Channel-Flows

Results that are predicted by the SST k-Omega model have a near-wall dependency on the results. This dependency is due to the near-wall behavior of the Omega (ω) equation when it approaches the near wall region.

Taking the original Model:

$\begin{matrix} {{\frac{{\partial\rho}k}{\partial t} + \frac{{\partial\rho}u_{j}k}{\partial x_{j}}} = {{2\tau_{ij}S_{ij}} - {\beta^{*}\rho\omega k} + {\frac{\partial}{\partial x_{j}}\left\lbrack {\left( {\mu + {\sigma_{k}\mu_{t}}} \right)\frac{\partial k}{\partial x_{j}}} \right\rbrack}}} & \left( {25.a} \right) \end{matrix}$ $\begin{matrix} {{\frac{{\partial\rho}\omega}{\partial t} + \frac{{\partial\rho}u_{j}\omega}{\partial x_{j}}} = {{\frac{\gamma}{v_{T}}2\tau_{ij}S_{ij}} - {\beta\rho\omega^{2}} + {\frac{\partial}{\partial x_{j}}\left\lbrack {\left( {\mu + {\sigma_{\omega}\mu_{t}}} \right)\frac{\partial\omega}{\partial x_{j}}} \right\rbrack} + {2\left( {1 - F_{1}} \right)\rho\sigma_{\omega 2}\frac{1}{\omega}\frac{\partial k}{\partial x_{j}}\frac{\partial\omega}{\partial x_{j}}}}} & \left( {25.b} \right) \end{matrix}$

For steady flows very close to the wall Eq. (1.b) can be simplified to

$\begin{matrix} {{v\frac{\partial^{2}\omega}{\partial y^{2}}} = {\beta\omega^{2}}} & (26.) \end{matrix}$

This equation has the following solution only applicable very close to the wall

$\begin{matrix} {{\frac{dV}{dy} = \frac{{\beta\omega}^{2}}{v}},{V = \frac{d\omega}{dy}},{{\frac{d\omega}{dV}\frac{dV}{dy}} = V},{{{\frac{\beta\omega^{2}}{v}\frac{d\omega}{dV}} = V};}} & (27.) \end{matrix}$ ${\frac{{\beta\omega}^{2}}{v} = {{d\omega} = {VdV}}},{\frac{{\beta\omega}^{3}}{3v} = \frac{V^{2}}{2}},{V = {- \sqrt{\frac{2}{3}\frac{\beta\omega^{3}}{v}}}}$ ${\frac{d\omega}{dy} = {- \sqrt{\frac{2}{3}\frac{\beta\omega^{3}}{v}}}},{\omega_{vis} = \frac{6v}{\beta y^{2}}}$

In order to develop a wall-function formulation the turbulent channel flow analysis previously developed for the energy dissipation rate Eq. (22.0) is used. However, before that is used, the process links ε and ω variables by using the definition of the corresponding eddy viscosity.

$\begin{matrix} {v_{T} = {\frac{k}{\omega} = {C_{\mu}\frac{k^{2}}{\varepsilon}}}} & (28.) \end{matrix}$ $\omega = \frac{\varepsilon}{C_{\mu}k}$

With this relationship Eq. (22.0) can be written in terms of ω.

$\begin{matrix} {\omega_{Log} = {\frac{u_{\tau}}{C_{\mu}^{1/2}\kappa y} = \frac{u_{\tau}}{\beta^{*{1/2}}\kappa y}}} & (29.) \end{matrix}$

FIG. 4 shows how numerical solutions on a turbulent channel flow predict both limits presented in Eqs. (27) and (29). It is desired to develop an equation that merges both limits.

$\begin{matrix} {\omega_{Hyb} = \frac{u_{\tau}}{\beta^{*{1/2}}\kappa{y\left\lbrack {1 - e^{- \frac{\beta u_{\tau}y}{6\beta^{*}{1/2}v\kappa}}} \right\rbrack}}} & (30.) \end{matrix}$

FIG. 5 shows that an analytical hybrid function, e.g., Eq. 30.0, is able to predict very closely, the numerical calculations. FIG. 5 shows effect of blending (ω_(hyb)) of the ancillary relationships for ω at the viscous sublayer y+<5 (ω_(V)) and logarithmic layer y+>25 (ω_(L)) which produces the correct ancillary relationship as a function of y+.

The numerical calculations cannot predict with high accuracy the stiff variation of ω in the viscous sublayer if the mesh resolution is not around y⁺<0.1, e.g., in FIG. 7 , when the near-wall resolution is not sufficiently fine in gradation. The numerical calculations shown in circles used a near-wall resolution of y+=0.05. The results show that the value of ω at the first cell does not fall on the theoretical value expected (ω_(v)) and induces an incorrect distribution of ω on the remaining grid points located at the inner layer (see FIG. 7 ), where the value of ω (solid circles) are above the ω_(v) distribution. Therefore, results show mesh dependency that results because diffusion discretization cannot properly resolve the steep gradients of ω as shown below.

In the viscous sublayer for y⁺<2 Eq. 26 needs to be accurately discretized. The solution of Eq. 26 requires enforcing Eq. 30 at the first cell away from the wall Y1, (FIG. 8 ). However, the diffusion discretization does not adequately recover the analytical gradient of ω at the wall.

$\begin{matrix} {{\omega_{v} = \frac{c}{y^{2}}},{\frac{\partial\omega_{v}}{\partial y} = {\frac{{- 2}c}{y^{3}} = \frac{{- 2}\omega}{y}}}} & \left( {32.a} \right) \end{matrix}$

It is assumed that by specifying the value of ω at the first cell away from the wall, will be sufficient to capture the diffusion flux for the first element that needs the diffusion flux. However, the first cells away from the wall are not integrated, and the values are prescribed using Eq. 30. The finite volume discretization used for the diffusion cannot reproduce the steep variation of ω as is shown below.

$\begin{matrix} {\frac{\partial\omega_{v}^{d}}{\partial y} = {\frac{\omega_{2} - \omega_{1}}{y_{2} - y_{1}} = {\frac{c}{y_{2} - y_{1}}\left\lbrack {\frac{1}{y_{2}^{2}} - \frac{1}{y_{1}^{2}}} \right\rbrack}}} & \left( {32.b} \right) \end{matrix}$

Here by substituting the viscous sublayer behavior of ω, and after, some algebraic manipulation of Eq. 32.b, shows that the gradient of ω at the element face is incorrect:

$\begin{matrix} {\frac{\partial\omega_{v}^{d}}{\partial y} = {- {\frac{2\omega_{f}}{\left( \frac{y_{2} + y_{1}}{2} \right)}\left\lbrack \frac{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}}{y_{1}^{2}y_{2}^{2}} \right\rbrack}}} & (33.) \end{matrix}$

That is, the numerical discretization using the prescribed values of ω will always over predict the diffusion flux, which is why the slope in FIG. 9 is steeper.

However, if the mesh resolution is y⁺<0.1, the first grid point is close enough to the wall to allow the solution to eventually asymptotically approach the correct distribution of ω, even with the incorrect flux induced by Eq. 33.

Thus, the overall solution is not changed by any further mesh refinements. However, if the first grid point is located y+>0.1, Eq. 33 will introduce a larger numerical error that inhibits the solution to asymptotically approach the correct distribution of ω before ω changes towards its log-region value. This will produce errors in the calculations that are mesh dependent, and are more noticeable when the near-wall resolution is found between 0.1<y⁺<2, as shown in FIG. 6 .

It is possible to analytically derive the equation for the diffusion of ω, and therefore a correction to the diffusion flux can be introduced (Eq. 34) to account for the error in Eq. 33.

$\begin{matrix} {\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lbrack \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rbrack}} & (34.) \end{matrix}$

The corrected value of ω is used in the TKE equation preventing over production of TKE associated when ω is damped. It is very important to note that Eq. 34 is only correct for y⁺<3.5 where Eq. 33 is valid. In order to show the improvements in accuracy by using Eq. 34, numerical calculations of channel flows showing the predicted velocity profile and friction factor using Eq. 30 are presented below.

FIG. 9 shows typical conventional results that occur when near wall resolutions of y+<3 are used, showing that the results are mesh dependent. The lack of accuracy on friction factor and velocity distribution are evident. That is, there are large errors introduced for meshes with near—wall resolution of Y+ 0.5 and 2.5 (see FIG. 9 ). Plural resolutions are plotted but only selective ones indicated by a reference line for clarity.

FIG. 10 , however shows that when Eq. 34 is used, the mesh dependency is eliminated, and the accuracy is substantially improved, as shown. Improvements in accuracy on friction factor and velocity distribution with Eq. (34.0) are quite evident. That is, the large errors shown in FIG. 9 , which are introduced for meshes with near—wall resolution of Y+ 0.5 and 2.5 are eliminated for these resolutions, and accurate results are to be expected demonstrating the importance of Eq. 34 to improve the accuracy of calculations. Plural resolutions are plotted but only selective ones indicated by a reference line for clarity.

While errors associated with viscous discretization Eq. (33.0) can be corrected with Eq. 34.0, unfortunately there is another error encountered when the near-wall resolution is located at the buffer layer, where the value of ω neither satisfies the viscous sublayer nor the logarithmic layer.

FIG. 11 shows that Eq. 30 is able to predict very closely, the exact solution of the ω's partial differential equation (Eq. 25.b), in both the inner and log regions, and while for Eq. 30 the numerical values at the buffer layer are very close to the numerical solutions from Eq. 25.b, the values at the buffer layer are under-predicted.

FIG. 12 illustrates the performance of the new boundary conditions of (ω_(hyb)) when the first grid point away from the wall is located on the buffer layer. This behavior is expected since at the buffer layer (5<y+<25) neither ω_(v) nor ω_(L) are valid behavior. The velocity profile shows an under prediction of the log-layer, which is associated to an increase in friction velocity from what it is expected. As a consequence, the wall-shear is larger, thus increasing the friction factor. The increase in the friction factor is due to a lower value of ω as predicted by Eq. 34 at the first cell when it is located in the buffer layer, as FIG. 10 shows. The lower value of ω induces larger values of TKE and as a consequence larger wall-shear. Plural resolutions are plotted but only selective ones indicated by a reference line for clarity.

In instances, both the viscous sublayer ω_(V) and the logarithmic layer value of ω_(L) will under-predict the values that are needed at the buffer layer, and thus neither of them nor any average of them would be sufficient.

Therefore, a buffer layer correction that increase the values of ω only at the buffer layer needs to be developed. In order to provide such a correction function Eqs. 27, 29, and 30 will be used in the following way:

$\begin{matrix} {{f_{\omega_{Vis}} = \frac{\omega_{Vis}}{\omega_{Hyb}}},{f_{\omega_{Log}} = \frac{\omega_{Log}}{\omega_{Hyb}}},{f_{blend} = {f_{\omega_{Vis}} + f_{\omega_{Log}}}}} & (35.) \end{matrix}$

Equation 35 is plotted on FIG. 13 , it shows an increase of about 30% in the buffer layer, it also exhibit asymptotic behavior that extends beyond the buffer layer, which can be problematic. The new ω boundary condition equation ω_(hyb) that is valid for viscous layer, buffer layer, and logarithmic region can be written as:

ω′_(Hyb) =f _(blend)ω_(Hyb)  (36.0)

FIG. 14 shows improvement at the buffer layer when Eq. 30 is corrected using Eq. 35. The improvement as illustrated in and at the buffer layer is substantial. Here the behavior of ω inside the inner layer is universal for wall-function theory, thus is Re independent provided the flow is turbulent. These relationships are developed under the assumption of equilibrium and as such can only be expected to work on simulated flows that satisfy the underlying assumptions that lead to the derivation of these equations.

FIG. 14 , illustrates an ω relationship that applies the blending function on ω_(hyb) to produce a function referred as ω_(HCorr) that is accurate throughout the wall (all y+, viscous sublayer, buffer layer, and logarithmic layer). While, it could be argued that the blending function results would not apply when the flow is not in equilibrium, these are valid as applied to the whole wall-function approach. However, the assumptions, in general, provide near-wall modeling for flows whose conditions depart from the idealizations applied to derive the boundary conditions equations. Therefore, Eq. 36 which recovers the viscous sublayer, logarithmic layer, and provides corrections for mesh independent results at the viscous sublayer and buffer layer can be regarded as the best boundary condition treatment for ω and it is valid as long as the wall-function approach is valid.

Equation 35 has an asymptotic behavior that permeates well into the viscous sublayer and the logarithmic region. Since correction of Eq. 30 need only apply in the buffer layer, the blending function can be limited to act in the buffer layer to prevent affecting the values at the inner layer and log layer which do not need to corrected, as in equation Eq. 36.1.

$\begin{matrix} {{\omega_{Hyb}^{\prime} = {f\omega_{Hyb}}},{f = \left\{ \begin{matrix} {{f = f_{blend}},{❘{5.5 < y^{+} < 16}}} \\ {{f = 1.},{❘{y^{+} < 5.5}},{y^{+} > 16}} \end{matrix} \right.}} & (36.1) \end{matrix}$

Results using the viscous sublayer correction (Eq. 34) and the buffer layer correction (Eq. 36.1) improves significantly the accuracy at the near-wall behavior as shown in FIG. 15 .

FIG. 15 illustrates results applying the universal boundary condition ω_(HCorr), which shows significant improvement on results in the buffer layer. Plural resolutions are plotted but only selective ones indicated by a reference line for clarity. While the buffer layer results improve substantially, the predicted friction factor is also in better agreement and the large errors observed in FIG. 11 are substantially removed.

Embodiments of the subject matter and the functional operations described in this specification can be implemented in digital electronic circuitry, tangibly-embodied computer software or firmware, computer hardware (including the structures disclosed in this specification and their structural equivalents), or in combinations of one or more of them. Embodiments of the subject matter described in this specification can be implemented as one or more computer programs (i.e., one or more modules of computer program instructions encoded on a tangible non-transitory program carrier for execution by, or to control the operation of, data processing apparatus). The computer storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of one or more of them.

The term “data processing apparatus” refers to data processing hardware and encompasses all kinds of apparatus, devices, and machines for processing data, including by way of example, a programmable processor, a computer, or multiple processors or computers. The apparatus can also be or further include special purpose logic circuitry (e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit)). In addition to hardware, the apparatus can optionally include code that creates an execution environment for computer programs (e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them).

A computer program, which can also be referred to or described as a program, software, a software application, a module, a software module, a script, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code)). A computer program can be deployed so that the program is executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a data communication network.

The processes and logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry (e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit)).

Computers suitable for the execution of a computer program can be based on general or special purpose microprocessors or both, or any other kind of central processing unit.

Generally, a central processing unit will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data (e.g., magnetic, magneto-optical disks, or optical disks), however, a computer need not have such devices. Moreover, a computer can be embedded in another device (e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a Global Positioning System (GPS) receiver, or a portable storage device (e.g., a universal serial bus (USB) flash drive), to name just a few).

Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory on media and memory devices, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices), magnetic disks (e.g., internal hard disks or removable disks), magneto-optical disks, and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subject matter described in this specification can be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback) and input from the user can be received in any form, including acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents to and receiving documents from a device that is used by the user, for example, by sending web pages to a web browser on a user's device in response to requests received from the web browser.

Embodiments of the subject matter described in this specification can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a client computer having a graphical user interface or a web browser through which a user can interact with an implementation of the subject matter described in this specification), or any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN) and a wide area network (WAN) (e.g., the Internet).

The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In some embodiments, a server transmits data (e.g., an HTML page) to a user device (e.g., for purposes of displaying data to and receiving user input from a user interacting with the user device), which acts as a client. Data generated at the user device (e.g., a result of the user interaction) can be received from the user device at the server.

While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any invention or on the scope of what can be claimed, but rather as descriptions of features that can be specific to particular embodiments of particular inventions. Certain features that are described in this specification in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Moreover, although features can be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination can be directed to a subcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing can be advantageous. Moreover, the separation of various system modules and components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

Particular embodiments of the subject matter have been described. Other embodiments are within the scope of the following claims. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results. As one example, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some cases, multitasking and parallel processing can be advantageous. 

1. A computer-implemented method for simulating fluid flow about a simulated physical object, the method comprising: receiving by one or more computing systems, a model of a simulation space that includes a mesh defining a representation of the physical object in the simulation space, with the mesh comprising plural cells having resolutions to account for surfaces of the physical object; determining boundary conditions for a specific energy dissipation rate of a k-Omega turbulence fluid flow model of the simulated fluid flow, by: computing by the one or more computing systems, a generalized wall-boundary condition from fluid flow variables, a value of the specific energy dissipation rate for a turbulent flow that is valid for a viscous layer, buffer layer, and logarithmic region of a boundary defined in the simulation space.
 2. The method of claim 1 wherein for a cell located at a position y+<3 of the boundary where y is a cell at the boundary, the method further comprises: applying by the one or more computing systems, a buffer layer correction factor as a boundary condition for the energy dissipation rate.
 3. The method of claim 1 wherein determining the boundary conditions further comprises: applying by the one or more computing systems, a buffer layer correction factor as a boundary condition for the energy dissipation rate for a cell located at a position y+<3 of the boundary where y is a cell at the boundary, and the correction factor is given according to: ω′_(Hyb) =f _(blend)ω_(Hyb) where ω′_(Hyb) is the correction factor f_(blend) is a blending function and ω_(Hyb) is a viscus layer correction function.
 4. The method of claim 1, further comprises: applying by the one or more computing systems, a viscous sublayer correction factor as a boundary condition for the energy dissipation rate.
 5. The method of claim 1 wherein determining the boundary conditions further comprises: applying by the one or more computing systems, a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to: $\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$ where $\frac{\partial\omega_{v}^{f}}{\partial y}$ is the correction factor, y₁ ² is a cell at location 1 and y₂ ² is the cell at position
 2. 6. The method of claim 3 wherein determining the boundary conditions further comprises: applying by the one or more computing systems, a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to: $\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$ where $\frac{\partial\omega_{v}^{f}}{\partial y}$ is the correction factor, y₁ ² is the cell at location 1 and y₂ ² is the cell at position
 2. 7. The method of claim 1, further comprising: accessing the k-Omega model; initializing the accessed k-Omega model with the determined boundary conditions; and executing the initialized k-Omega model to simulated the fluid flow about the simulated physical object.
 8. The method of claim 1, further comprising: accessing the k-Omega turbulence fluid flow model, with the k-Omega turbulence fluid flow model, including a first partial differential equation to determine turbulent kinetic energy of the fluid flow; and a second partial differential equation to determine the specific energy dissipation rate of the fluid flow in the simulation space.
 9. The method of claim 1, further comprising: determining whether the location is at a buffer layer; and when at the buffer layer, applying a correction that increase the values of energy dissipation rate only at the buffer layer by: applying a blending function that acts on the values of energy dissipation rate at the buffer layer and prevents the blending function to affect values at the viscous layer of the boundary defined in the simulation space.
 10. The method of claim 9 wherein applying the correction further comprises: applying a blending function that acts on the values of energy dissipation rate at the buffer layer and prevents the blending function to affect values at the viscous layer of the boundary defined in the simulation space.
 11. A system for simulating a physical process flow about a simulated physical object, the system comprising: one or more processor devices; memory operatively coupled to the one or more processor devices; storage media storing a computer program comprising instructions to cause the system to: receive a model of a simulation space that includes a mesh defining a representation of the physical object in the simulation space, with the mesh comprising plural cells having resolutions to account for surfaces of the physical object; determine boundary conditions for a specific energy dissipation rate of a k-Omega turbulence fluid flow model of the simulated fluid flow, by instructions to cause the system to: compute from fluid flow variables a value of the specific energy dissipation rate for a turbulent flow that is valid for a viscous layer, buffer layer, and logarithmic region of a boundary defined in the simulation space.
 12. The system of claim 11, further configured to: determine that a cell is located at a position y+<3 of the boundary where y is a cell at the boundary; and apply a buffer layer correction factor as a boundary condition for the energy dissipation rate, with the correction factor given according to: ω′_(Hyb) =f _(blend)ω_(Hyb) where ω′_(Hyb) is the correction factor f_(blend) is a blending function and ω_(Hyb) is a viscus layer correction function.
 13. The system of claim 11, further configured to: apply a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to: $\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$ where $\frac{\partial\omega_{v}^{f}}{\partial y}$ is the correction factor, y₁ ² is a cell at location 1 and y₂ ² is the cell at position
 2. 14. The system of claim 12, further configured to: apply a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to: $\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$ where $\frac{\partial\omega_{v}^{f}}{\partial y}$ is the correction factor, y₁ ² is the cell at location 1 and A is the cell at position
 2. 15. The system of claim 12, further configured to: access the k-Omega model; initialize the accessed k-Omega model with the determined boundary conditions; and execute the initialized k-Omega model to simulated the fluid flow about the simulated physical object.
 16. A computer program product for simulating a physical process, the computer program product tangibly stored on a non-transitory computer readable storage medium, the computer program product comprising instructions to cause a system to: receive a model of a simulation space that includes a mesh defining a representation of the physical object in the simulation space, with the mesh comprising plural cells having resolutions to account for surfaces of the physical object; determine boundary conditions for a specific energy dissipation rate of a k-Omega turbulence fluid flow model of the simulated fluid flow, by instructions to cause the system to: compute from fluid flow variables a value of the specific energy dissipation rate for a turbulent flow that is valid for a viscous layer, buffer layer, and logarithmic region of a boundary defined in the simulation space.
 17. The computer program product of claim 16, further comprising instructions to cause the system to: determine that a cell is located at a position y+<3 of the boundary where y is a cell at the boundary; and apply a buffer layer correction factor as a boundary condition for the energy dissipation rate, with the correction factor given according to: ω′_(Hyb) =f _(blend)ω_(Hyb) where ω′_(Hyb) is the correction factor f_(blend) is a blending function and ω_(Hyb) is a viscus layer correction function.
 18. The computer program product of claim 16, further comprising instructions to cause the system to: apply a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to: $\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$ where $\frac{\partial\omega_{v}^{f}}{\partial y}$ is the correction factor, y₁ ² is a cell at location 1 and y₂ ² is the cell at position
 2. 19. The computer program product of claim 18, further comprising instructions to cause the system to: apply a viscous sublayer correction factor as a boundary condition for the energy dissipation rate, with the viscous sublayer correction factor given according to: $\frac{\partial\omega_{v}^{f}}{\partial y} = {\frac{\partial\omega_{v}^{d}}{\partial y}\left\lfloor \frac{y_{1}^{2}y_{2}^{2}}{\left( \frac{y_{2} + y_{1}}{2} \right)^{4}} \right\rfloor}$ where $\frac{\partial\omega_{v}^{f}}{\partial y}$ is the correction factor, y₁ ² is the cell at location 1 and y₂ ² is the cell at position
 2. 20. The computer program product of claim 16, further comprising instructions to cause the system to: access the k-Omega model; initialize the accessed k-Omega model with the determined boundary conditions; and execute the initialized k-Omega model to simulated the fluid flow about the simulated physical object. 